package com.mes.dao.jy;

import java.util.List;

import com.mes.entity.jy.DaysheduDetail;
import com.mes.entity.jy.Queryjy;

/**
 * @ClassName: DaysheduDetailMapper 
 * @Description:排产详情Dao层接口
 * @Author jy
 * @Date 2018年3月28日 下午3:53:58 
 * @version 1.0
 */
public interface DaysheduDetailMapper {

	/**
	 * 添加排产单详情
	 * @param daysheduDetail 排产详情实体
	 * @return  影响行数
	 */
	public int createDaysheduDetail(DaysheduDetail daysheduDetail);

	/**
	 * 查询此排产单是否存在
	 * @param daysheduDetail 排 产详情实体
	 * @return 排产详情实体
	 */
	public DaysheduDetail selectDaysheduDetailByMany(DaysheduDetail daysheduDetail);

	/**
	 * 修改排产单详情
	 * @param daysheduDetail 排 产详情实体
	 * @return 影响行数
	 */
	public int updateDaysheduDetaile(DaysheduDetail daysheduDetail);

	/**
	 * 根据排产单号查询排产单详情
	 * @param dayshedunum 排产单号
	 * @return 排产详情实体集合
	 */
	List<DaysheduDetail> selectDaysheduDetailByDnum(String dayshedunum);

	// 查询排产单（hy）
	List<DaysheduDetail> selectDay(DaysheduDetail daysheduDetail);

	// 查询总数(hy)
	int selectDayCount(DaysheduDetail daysheduDetail);

	// 根据排产单和品编修改该条排产单详情的remark9字段，0为未生产领料单，1为已生成领料单(hy)
	void setRe9(DaysheduDetail daysheduDetail);

	// 修改排产单(hy)
	void update(DaysheduDetail daysheduDetail);

	/**
	 * 根据排产单号统计详情总数
	 * @param dayshedunum 排产单号
	 * @return 统计总数
	 */
	public int countDaysheduDetail(String dayshedunum);

	/**
	 * 排产单作业关闭
	 * @param dayshedudetail 排产单详情
	 * @return 影响行数
	 */
	public int editWstape(DaysheduDetail dayshedudetail);

	/**
	 * 根据作业信息条件统计排产详情
	 * @param queryjy 条件查询实体
	 * @return 统计结果
	 */
	public int countDysheduDetailByAllw(Queryjy queryjy);

	/**
	 * 根据作业信息页面查询排产详情
	 * @param queryjy 条件查询实体
	 * @return 排产实体详情集合
	 */
	public List<DaysheduDetail> selectDysheduDetailByAllw(Queryjy queryjy);

	/**
	 * 删除冗余数据
	 */
	public void deleteDaysheduNumNotin();

	/**
	 * 根据排产单号查询排产详情实体
	 * @param dayshedunum 排产单号
	 * @return 排产单详情实体
	 */
	public List<DaysheduDetail> selectDaysheduDetailByDnum2(String dayshedunum);
}